跳到主要内容

序列的修改、散列和切片

本章将以第 9 章定义的二维向量 Vector2d 类为基础,向前迈出一大步,定义表示多维向量的 Vector 类。这个类的行为与 Python 中标准的不可变扁平序列一样。Vector 实例中的元素是浮点数,本章结束后 Vector 类将支持下述功能:

  • 基本的序列协议—— __len____getitem__

  • 正确表述拥有很多元素的实例

  • 适当的切片支持,用于生成新的 Vector 实例

  • 综合各个元素的值计算散列值

  • 自定义的格式语言扩展

此外,我们还将通过 __getattr__ 方法实现属性的动态存取,以此取代 Vector2d 使用的只读特性——不过,序列类型通常不会这么做。

TBD